Thema: Continuous ‚Everything‘

Automatische Systemtest in einer Continuous Integration Umgebung

In dem Vortrag wird aufgezeigt, wie bei der IVU Traffic Technologies AG automatische Systemtests eingesetzt werden. Gestartet wurde die Entwicklung der Tests vor einigen Jahren, um die Lücke zwischen den vorhandenen automatischen Unit- und Integrationstests sowie den manuell ausgeführten Regressionstests zu füllen.

Ziel der Automatisierung war es vor allem, zeitaufwändige manuelle Tests durch automatische Tests zu ersetzen. Darüber hinaus war es wichtig, den Aufbau des Gesamtsystems mit einer 3-Schicht-Architektur regelmäßig zu prüfen, also genau den Teil, den ein Integrationstest nicht mehr leisten kann und soll. Inzwischen blicken die Systemtests auf einen mehrjährigen Einsatz in der CI-Umgebung zurück.

Von den Zahlen her ist die Testpyramide mit 4500 Unittest, 1500 Integrationstest und 300 Systemtests ganz gut aufgestellt. Betrachtet man dieses jedoch etwas differenzierter für einzelne Domänen, dann gibt es noch viele Bereiche, in denen die Pyramide entweder vergrößert werden sollte oder die Form angepasst werden muss. Zusätzlich gibt es noch 3000 manuelle Regressionstests, die zum Teil noch automatisiert werden können. Gezeigt wird, wie die IVU daran arbeitet, sich der idealen Pyramide zu nähern, aber auch, wo und warum die IVU bewusst darauf verzichtet, weitere Schritte in diese Richtung zu unternehmen.

Im Laufe des Vortrags werden die dazu eingesetzten Technologien FitNesse und Ranorex kurz vorgestellt. Dabei geht es zunächst um die technischen Möglichkeiten, die anhand von Beispielen aus der Praxis erläutert werden. Der Einsatz hat aber auch konkrete Auswirkungen auf die Arbeitsprozesse von Entwicklern, Testern und Produktverantwortlichen, auf die in diesem Rahmen ebenfalls eingegangen wird.

Die Einbindung in eine Continuous Integration bringt ganz neue Anforderungen. Dabei entstehen zum Teil unerwartete positive und negative Effekte. Der zweite Teil des Vortrags geht daher darauf ein, wie die Integration in eine CI funktioniert und gibt einige Beispiele für die Probleme und den Nutzen, die dabei entstehen.

Der Vortrag zeigt auf, welche Rolle automatische Systemtests im Rahmen einer gesamten Testarchitektur spielen können und wo die Grenzen dieser Form von Tests sind. Es werden einige Hinweise darauf gegeben, wie man dabei technisch und methodisch bei der Umsetzung vorgehen kann. Nicht zuletzt soll der Vortrag Mut machen, mit kleinen Schritten mit der Automatisierung zu beginnen, und sich nicht von zu groß gesteckten Zielen in Richtung Continuous Delivery lähmen zu lassen.

Silke Reimer

Silke Reimer ist Test-Architektin bei der IVU Traffic Technologies AG. Sie hat ein Studium als Diplom-Systemwissenschaftlerin im Fachbereich der Mathematik/Information der Universität abgeschlossen. Danach hat sie einige Jahre als Software-Entwicklerin und Projektleiterin für IT-Projekte in verschiedenen Firmen gearbeitet.

Motiviert durch die positiven Erfahrungen im Bereich Test Driven Development inbesondere in einer der Firmen hat sie vor einigen Jahren beschlossen in den Bereich Software -Tests zu
wechseln.

In ihrer Position als Test-Architektin widmet sie sich insbesondere dem Thema Testautomatisierung in den verschiedenen Ebenen. Dies schließe die Intergration in CI ausdrücklich mit ein. Ein weiteres Interesse gilt der Anpassung von Entwicklungs - und Testprozessen hin zu mehr Agilität.